﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using WxMpApiDemo.Models;

namespace WxMpApiDemo.Services
{
    public interface IJiuChunTangService
    {
        /// <summary>
        /// 获取token
        /// </summary>
        /// <param name="forceRefresh"></param>
        /// <returns></returns>
        public Task<string> GetAccessTokenAsync(bool forceRefresh = false);

        /// <summary>
        /// 创建二维码
        /// </summary>
        /// <param name="sceneStr"></param>
        /// <param name="expireSeconds"></param>
        /// <returns></returns>
        public Task<QrCodeResponse> CreateQrCodeAsync(string sceneStr, int expireSeconds = 600);

        /// <summary>
        /// 获取扫码状态
        /// </summary>
        /// <param name="eventId"></param>
        /// <returns></returns>
        public Task<ScanStatusResponse> GetScanStatusAsync(string eventId);

        /// <summary>
        /// 发送报告
        /// </summary>
        /// <param name="reportData"></param>
        /// <returns></returns>
        public Task<ReportCallbackResponse> SendReportCallbackAsync(ReportCallbackRequest reportData);
    }
}
